home *** CD-ROM | disk | FTP | other *** search
/ PC Graphics Unleashed / PC Graphics Unleashed.iso / ch18 / rtrace / rtrace.txt < prev    next >
Text File  |  1994-02-01  |  25KB  |  732 lines

  1.  
  2.  
  3. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  4.  
  5.  
  6. NAME
  7.      rtrace - ray tracing program
  8.  
  9. SYNOPSIS
  10.      rtrace [options] scene image [>log]
  11.  
  12. AUTHOR
  13.      Antonio Costa, INESC-Norte, 1989 1994
  14.  
  15. DESCRIPTION
  16.      rtrace command performs ray tracing from  a  SFF  text  file  which  must
  17.      ------                                       ---
  18.      describe  a  scene  with  objects, lights, surface definitions, textures,
  19.      etc.  This scene file must be in the  appropriate  format,  as  described
  20.      bellow.
  21.      Basically, ray tracing is an algorithm  for  the  creation  of  realistic
  22.      images  from  the  geometry and attributes of objects, lights, etc.  This
  23.      ray tracer supports several types of objects (sphere, box, bicubic patch,
  24.      cone,  cylinder,  polygon,  triangle  and text), CSG and list operations,
  25.      different light types, reasonable surface definitions, lots of  textures,
  26.      several   anti-aliasing  schemes,  depth  of  field,  stereoscopic  image
  27.      creation and so on...
  28.  
  29. OPTIONS
  30.      [wimage-width] [himage-height]
  31.        ----- -----    ----- ------
  32.      The parameters  image-width  and  image-height  define  the  image  size.
  33.                      ----- -----       ----- ------
  34.      Defaults are 256x256.
  35.  
  36.      [Aaliasing-threshold]
  37.        -------- ---------
  38.      [Sshading-threshold]
  39.        ------- ---------
  40.      [Tambient-threshold]
  41.        ------- ---------
  42.      The  parameters  aliasing-threshold   (pixel   supersampling),   shading-
  43.                       -------- ---------                              -------
  44.      threshold  (shading rays propagation) and ambient-threshold (ambient rays
  45.      ---------                                 ------- ---------
  46.      distribution  caching)  control  the  image  quality  (0-best,   1-poor).
  47.      Defaults  are  0.05,  0.01  and 0 (no ambient threshold). Good ranges are
  48.      0.1-0.03, 0.01-0.001 and 0.01-0.00001, respectively.   If  the  aliasing-
  49.                                                                      --------
  50.      threshold  parameter  is  negative, contrast between pixel colors will be
  51.      ---------
  52.      used instead of difference.
  53.  
  54.      [aantialiasing-mode]
  55.        ------------ ----
  56.      The   parameter   antialiasing-mode   chooses   adaptive    supersampling
  57.                        ------------ ----
  58.      antialiasing (0-default), semi-adaptive supersampling antialiasing (1) or
  59.      normal supersampling antialiasing (2-should be used  with  nonzero  focal
  60.      apertures).
  61.  
  62.      [Bmaskfile]
  63.        --------
  64.      The parameter maskfile creates a file with a  background  mask,  suitable
  65.                    --------
  66.      for mixing images (it is like an alpha channel).
  67.  
  68.      [bbackface-mode]
  69.        -------- ----
  70.      The parameter backface-mode controls the removal of backface polygons and
  71.                    -------- ----
  72.      triangles from the scene.  Default is no removal (0). Partial removal (1)
  73.      is made when finding candidates for ray-object intersection; if there are
  74.      any  objects  facing  against the ray, they will be skipped. Full removal
  75.      (2) is made during the read of the scene; if there are any objects facing
  76.      against  the  viewer,  they  are  thrown  away completely (this may cause
  77.      incorrect lighting and shadowing).
  78.  
  79.  
  80.                                 January, 1994                                1
  81.  
  82.  
  83.  
  84. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  85.  
  86.  
  87.      [ccluster-size]
  88.        ------- ----
  89.      The parameter cluster-size controls the enclosing of objects  (number  of
  90.                    ------- ----
  91.      grouped objects per cluster) in the object hierarchy. Use a low value for
  92.      sparse scenes, a high value for dense scenes (4-default).   The  value  1
  93.      means  to  use  a  new method of clustering objects.  Usually this method
  94.      performs worse than the default method.  The  value  0  means  to  use  a
  95.      method  similar  to  the  one of Goldsmith/Salmon for clustering objects.
  96.      Sometimes this method performs better than the default method.
  97.  
  98.      [dambient-levels]
  99.        ------- ------
  100.      The  parameter  ambient-levels  defines  the  number  of  shading  levels
  101.                      ------- ------
  102.      (shading  tree depth) in which ambient lighting calculations will be done
  103.      through ray distribution (0-default, ie, no ray  distribution).  Use  low
  104.      values!
  105.  
  106.      [Dambient-samples]
  107.        ------- -------
  108.      The parameter ambient-samples defines the maximum number  of  distributed
  109.                    ------- -------
  110.      rays to be used in ambient lighting calculations (16-default). Again, use
  111.      with care.
  112.  
  113.      [iintersect-mode]
  114.        --------- ----
  115.      The  parameter  intersect-mode   chooses,   in   adaptive   supersampling
  116.                      --------- ----
  117.      antialiasing,  between  testing all scene objects (1) or only the objects
  118.      found at the pixel corners and inside (0-default;  this  greatly  reduces
  119.      CPU time, but with very small objects, it sometimes fails).
  120.  
  121.      [Iintersect-adjust-mode]
  122.        --------- ------ ----
  123.      The parameter intersect-adjust-mode avoids  some  problems  with  invalid
  124.                    --------- ------ ----
  125.      self-intersections  (1)  (0-default).  Scenes with text objects should be
  126.      traced with this parameter equal to 1.
  127.  
  128.      [jjittering-mode]
  129.        --------- ----
  130.      The parameter jittering-mode chooses jittered sampling  (1)  or  not  (0-
  131.                    --------- ----
  132.      default).  Sometimes,  activating  it  produces better images from scenes
  133.      with small tricky details.
  134.  
  135.      [llighting-mode]
  136.        -------- ----
  137.      The parameter light-mode controls the generation of shadow  rays  through
  138.                    ----- ----
  139.      non-opaque  objects:  0-none (default), 1-partial, 2-full. If a scene has
  140.      translucent objects, to obtain realism one should use 1 or 2 (better).
  141.  
  142.      [mshading-mode]
  143.        ------- ----
  144.      The parameter  shading-mode  chooses  between  shading  models:  0-normal
  145.                     ------- ----
  146.      phong,  1-strauss (default but slower) (note: this model was developed by
  147.      Paul Strauss of SGI).
  148.  
  149.      [nnormal-mode]
  150.        ------ ----
  151.      The parameter normal-mode controls the correction of surface normals,  so
  152.                    ------ ----
  153.      that  it  points  against  the  incident ray:  0-always (default), 1-only
  154.      inside objects. With "correct" objects, it is good to use 1.
  155.  
  156.      [xwalk-mode]
  157.        ---- ----
  158.      The parameter walk-mode  controls  how  pixels  are  scanned  inside  the
  159.                    ---- ----
  160.      picture.  Default  is 0, which is a serpertine walk (left to right, right
  161.      to left, and so on). 1 means an Hilbert  (fractal)  walk,  which  demands
  162.      more  memory, but maximizes the effect of pixel coherency (in scenes with
  163.  
  164.  
  165.                                 January, 1994                                2
  166.  
  167.  
  168.  
  169. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  170.  
  171.  
  172.      many objects,  it  can  save  some  time!).   Perhaps  1  should  be  the
  173.      default...
  174.  
  175.      [znormal-check-mode]
  176.        ------ ----- ----
  177.      The  parameter  normal-check-mode  controls  the  correction  of  surface
  178.                      ------ ----- ----
  179.      normals  when  textures  that  modify  the  normal  are used, as they may
  180.      sometimes create strange surface effects. This tends  to  happen  if  the
  181.      scale  of  the normal perturbation is big.  0-no correction (default), 1-
  182.      correction.
  183.  
  184.      [Rrawfile]
  185.        -------
  186.      The parameter rawfile creates a raw image file, without any  antialiasing
  187.                    -------
  188.      (all defects show up!).
  189.  
  190.      [psampling-levels]
  191.        -------- ------
  192.      The parameter sampling-levels controls  the  amount  of  sampling  levels
  193.                    -------- ------
  194.      inside  pixels:   0-none (default) ... 3-maximum. A reasonable value is 2
  195.      for high resolutions, but for small ones  3  gives  better  (and  slower)
  196.      results.
  197.  
  198.      [sshading-levels]
  199.        ------- ------
  200.      The parameter shading-levels establishes a  maximum  shading  tree  depth
  201.                    ------- ------
  202.      (default  is  8). When a scene has transparent/reflective objects, it may
  203.      be important to lower this parameter, or else the tracing never stops. In
  204.      the other cases, there should be no problem allowing it to be big.
  205.  
  206.      [ttexture-mode]
  207.        ------- ----
  208.      The parameter texture-mode allows the definition of  texture(s)  for  the
  209.                    ------- ----
  210.      objects:  0-no textures (default), 1-with textures defined inside objects
  211.      field, 2-with textures defined  after  objects  field.  As  textures  may
  212.      consume much CPU time, they should be activated only for final images.
  213.  
  214.      [vview-mode]
  215.        ---- ----
  216.      The parameter view-mode chooses the view mode: 0-normal (default), 1-left
  217.                    ---- ----
  218.      eye, 2-right eye.
  219.  
  220.      [Pfocal-aperture]
  221.        ----- --------
  222.      The parameter focal-aperture defines the focal  aperture  of  the  camera
  223.                    ----- --------
  224.      (default 0.0, ie, pinhole camera). If different than zero, there is depth
  225.      of field, and so adaptive supersampling antialiasing will not work well.
  226.  
  227.      [Ffocal-distance]
  228.        ----- --------
  229.      The parameter focal-distance defines the focal  distance  of  the  camera
  230.                    ----- --------
  231.      (default is the distance from the eye point to the look point).
  232.  
  233.      [Estereo-separation]
  234.        ------ ----------
  235.      The parameter stereo-separation controls the separation between the  left
  236.                    ------ ----------
  237.      and  the  right eye.  If negative, it represents a percentage of the gaze
  238.      distance.
  239.  
  240.      [Ooutput-format]
  241.        ------ ------
  242.      The parameter output-format chooses between the PIC format (0-default) or
  243.                    ------ ------
  244.      the PPM format (1).
  245.  
  246.  
  247.  
  248.  
  249.  
  250.                                 January, 1994                                3
  251.  
  252.  
  253.  
  254. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  255.  
  256.  
  257.      [Vverbose-mode]
  258.        ------- ----
  259.      The parameter verbose-mode supresses any messages (0) or shows listing of
  260.                    ------- ----
  261.      parameters  (1),  previous plus statistics (2-default) or previous plus a
  262.      line by line echo of the tracing  (3-default  on  DOS  and  transputers).
  263.      Note: when running the DOS DJGPP version, there are two extra values that
  264.      display the picture on the screen, -1 for  grayscale  or  -2  for  color.
  265.      These values supress any messages.
  266.  
  267.      [+Oobjects-max]
  268.         ------- ---
  269.      The parameter objects-max defines the maximum number of  objects  to  use
  270.                    ------- ---
  271.      (default is 25000).
  272.  
  273.      [+Llights-max]
  274.         ------ ---
  275.      The parameter lights-max defines the maximum  number  of  lights  to  use
  276.                    ------ ---
  277.      (default is 16).
  278.  
  279.      [+Ssurfaces-max]
  280.         -------- ---
  281.      The parameter surfaces-max defines the maximum number of surfaces to  use
  282.                    -------- ---
  283.      (default is 256).
  284.  
  285.      [+Ccsg-level-max]
  286.         --- ----- ---
  287.      The parameter csg-level-max defines the maximum number of levels  in  CSG
  288.                    --- ----- ---
  289.      trees to use (default is 256).
  290.  
  291.      [Meeye-file]
  292.         --- ----
  293.      The parameter eye-file is the name of a file that contains eye  positions
  294.                    --- ----                                     ---
  295.      for movie fly-throughs (3 real numbers representing XYZ in each line). In
  296.      movie mode, the scene  is  read  only  once  and  successive  images  are
  297.      -----
  298.      produced and stored in the picture file.
  299.  
  300.      [Mllook-file]
  301.         ---- ----
  302.      The parameter look-file  is  the  name  of  a  file  that  contains  look
  303.                    ---- ----                                              ----
  304.      positions for movie fly-throughs.
  305.  
  306.      [Muup-file]
  307.         -- ----
  308.      The parameter up-file is the name of a file that contains up vectors  for
  309.                    -- ----                                     --
  310.      movie fly-throughs.
  311.  
  312.      [Maangle-file]
  313.         ----- ----
  314.      The parameter angle-file is the  name  of  a  file  that  contains  angle
  315.                    ----- ----                                            -----
  316.      apertures for movie fly-throughs (2 real numbers in each line).
  317.  
  318.      [M+movie-frames-max]
  319.         ----- ------ ---
  320.      The parameter movie-frames-max defines the maximum number  of  frames  to
  321.                    ----- ------ ---
  322.      produce (default is 50).
  323.  
  324.      The scene data internal syntax (SFF) is described bellow.
  325.          -----
  326.  
  327.      The image file will contain the ray traced image.  The image file has a 4
  328.          -----
  329.      byte header composed of width LS and MS bytes, height LS and MS bytes and
  330.                              -----                  ------
  331.      RGB byte triplets starting in the upper left corner line by line  to  the
  332.      lower right corner.
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.                                 January, 1994                                4
  340.  
  341.  
  342.  
  343. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  344.  
  345.  
  346. RESTRICTIONS
  347.      The straightforward use:
  348.  
  349.        rtrace demo.sff demo.pic
  350.  
  351.      is not recommended, as ray tracing usually takes  lots  of  CPU  time  to
  352.      execute.
  353.  
  354.      So, it is better to do:
  355.  
  356.        rtrace demo.sff demo.pic >demo.log &
  357.  
  358.      or then use nice (1) or similar strategies.
  359.                  ----
  360.  
  361. BUGS
  362.      No bugs known.  They have to be hidden deep somewhere, as usual.
  363.  
  364. DESCRIPTION
  365.      SFF (Simple File Format) description follows. This is a very crude  ASCII
  366.      format,  almost  like  if generated by a lexical analyser. The idea is to
  367.      have other programs create scene descriptions in more sophisticated ways,
  368.      and  then  feed  the  tokenized  results  to this program. So, it behaves
  369.      accordingly to the UNIX philosophy: one program for one task.  Complaints
  370.      are not wellcome!...
  371.  
  372.      There is a reasonable scene language  available  (SCN)  that  allows  the
  373.      creation  of  scenes  with much more flexibility; the converter is called
  374.      'scn2sff' and works directly with this program.
  375.  
  376.      Note: the ^(circunflex) character represents start of line.
  377.  
  378.      [Start of File]
  379.      ^... Comment
  380.      ^Eye(X Y Z)
  381.      ^Look(X Y Z)
  382.      ^Up(X Y Z)
  383.      ^View_angle(H V) [1,89 degrees]
  384.      ^... Comment
  385.      ^Background(R G B)
  386.      ^Ambient(R G B)
  387.      ^... Comment
  388.      ^Light_type(Type) Position(X Y Z) Bright(R G B) ...
  389.        |                                              |
  390.        |                  /---------------------------/
  391.        |                  |
  392.        V                  V
  393.       1-POINT:
  394.       2-DIRECTIONAL: Direction(X Y Z) Angle(La) Light_Factor(Lf)
  395.       3-EXTENDED:    Radius(R) Samples(N)
  396.       4-PLANAR:      Vector1(X Y Z) Vector2(X Y Z) Samples1(N) Samples2(N)
  397.      ^Etc
  398.      ^<NL>
  399.      ^... Comment
  400.      ^Surface_type(Type) Color(R G B) ...
  401.        |                               |
  402.        |        /----------------------/
  403.  
  404.  
  405.                                 January, 1994                                5
  406.  
  407.  
  408.  
  409. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  410.  
  411.  
  412.        |        |
  413.        V        V
  414.       1-: Dif(R G B) Spec(R G B) Phong(Pf) Metal(Mf) Trans(R G B)
  415.       2-: Smoothness(R G B) Metalness(R G B) Transmission(R G B)
  416.      ^Etc
  417.      ^<NL>
  418.      ^... Comment
  419.      ^Object_type(Type) Surface_ID(S) Refraction(Re) ...
  420.        |                                              |
  421.        |                     /------------------------/
  422.        |                     |
  423.        V                     V
  424.       1-SPHERE:          Center(X Y Z) Radius(R)
  425.       2-PARALLELIPIPED:  Center(X Y Z) Size(X Y Z)
  426.       3-PATCH:           Origin(X Y Z) Scale(X Y Z) Filename(...)
  427.       4-CONE/CYLINDER:   Base(X Y Z) Base_Radius(Rb) Apex(X Y Z)
  428.                          Apex_Radius(Ra)
  429.       5-POLYGON:         Origin(X Y Z) Scale(X Y Z) Filename(...)
  430.       6-TRIANGLE:        Origin(X Y Z) Scale(X Y Z) Filename(...)
  431.       7-TEXT:            Filename(...)
  432.      or
  433.       64-TEXTURE:        see below
  434.       65-TRANSFORMATION: Object_ID(I)
  435.                          Transform(X1 Y1 Z1 W1 ... X4 Y4 Z4 W4)
  436.       66-CSG 0:          Surface_ID(S) Refraction(Re) (Union-0 Sub-1 Int-2)
  437.          CSG 1:          Next CSG member
  438.          CSG 2:          End of CSG
  439.       67-LIST 0:         Surface_ID(S) Refraction(Re)
  440.          LIST 1:         End of List
  441.      ^Etc
  442.      ^<NL>
  443.      ^... Comment
  444.      ^Texture_type(Type) Object_ID(I)
  445.        |                 Transform(X1 Y1 Z1 W1 ... X4 Y4 Z4 W4)
  446.        |                 ...
  447.        |                  |
  448.        V                  V
  449.       0-NULL:
  450.       1-CHECKER:   Surface_ID(S)
  451.       2-BLOTCH:    Scale(K) Surface_ID(S) [Filename(...) or -]
  452.       3-BUMP:      Scale(K)
  453.       4-MARBLE:    [Filename(...) or -]
  454.       5-FBM:       Offset(K) Scale(K) Omega(K) Lambda(L)
  455.                    Threshold(K) Octaves(O)
  456.                    [Filename(...) or -]
  457.       6-FBMBUMP:   Offset(K) Scale(K) Lambda(L) Octaves(O)
  458.       7-WOOD:      Color(R G B)
  459.       8-ROUND:     Scale(K)
  460.       9-BOZO:      Turbulence(K) [Filename(...) or -]
  461.       10-RIPPLES:  Frequency(K) Phase(K) Scale(K)
  462.       11-WAVES:    Frequency(K) Phase(K) Scale(K)
  463.       12-SPOTTED:  [Filename(...) or -]
  464.       13-DENTS:    Scale(K)
  465.       14-AGATE:    [Filename(...) or -]
  466.       15-WRINKLES: Scale(K)
  467.       16-GRANITE:  [Filename(...) or -]
  468.  
  469.  
  470.                                 January, 1994                                6
  471.  
  472.  
  473.  
  474. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  475.  
  476.  
  477.       17-GRADIENT: Turbulence(K) Direction(X Y Z)
  478.                    [Filename(...) or -]
  479.       18-IMAGEMAP: Turbulence(K) Mode(K) Axis(X Y) Filename(...)
  480.       19-GLOSS:    Scale(K)
  481.       20-BUMP3:    Scale(K) Size(K)
  482.      ^<NL>
  483.      ^... Comments
  484.      [End of File]
  485.  
  486.      1. Valid ranges of data
  487.  
  488.      RGB must be in [0,1[ (Note: RGB brightness of lights may  be  between  ]-
  489.      300,300[; negative values mean to not attenuate with distance).
  490.  
  491.      XYZ must be in [-10000,10000]
  492.  
  493.      Factor must be in [0,300[
  494.  
  495.      Filename must a valid filename for the operating system, or then '-',  in
  496.      which  case  data  is  read  from  the  standard input or the current SFF
  497.      stream.
  498.  
  499.      2. Patch specification
  500.  
  501.      File format for PATCH (bicubic 4-sided patch):
  502.  
  503.      [Start]
  504.      ^Patch_1_Index(1 2 3 4 5 6 7 8 9 10 11 12)
  505.      ^Patch_2
  506.      ^Etc
  507.      ^<NL>
  508.      ^Patch_Index_1_Coords(X Y Z)
  509.      ^Patch_Index_2_Coords(X Y Z)
  510.      ^Etc
  511.      ^<NL>
  512.      ^...
  513.      [End]
  514.  
  515.      3. Polygon specification
  516.  
  517.      File format for POLYGON (n-sided planar polygon):
  518.  
  519.      [Start]
  520.      ^Polygon_1_Vertex_Number Polygon_1_Index(1 2 3 ...)
  521.      ^Polygon_2
  522.      ^Etc
  523.      ^<NL>
  524.      ^Polygon_Index_1_Coords(X Y Z)
  525.      ^Polygon_Index_2_Coords(X Y Z)
  526.      ^Etc
  527.      ^<NL>
  528.      ^...
  529.      [End]
  530.  
  531.  
  532.  
  533.  
  534.  
  535.                                 January, 1994                                7
  536.  
  537.  
  538.  
  539. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  540.  
  541.  
  542.      4. Triangle specification
  543.  
  544.      File format for TRIANGLE (3-sided polygon with vertex normals):
  545.  
  546.      [Start]
  547.      ^Triangle_1_Vertice_1(X Y Z) Normal_1(X Y Z)
  548.                  Vertice_2(X Y Z) Normal_2(X Y Z)
  549.                  Vertice_3(X Y Z) Normal_3(X Y Z)
  550.      ^Triangle_2
  551.      ^<NL>
  552.      ^...
  553.      [End]
  554.  
  555.      If the surface is has index 0, then you must specify  3  surface  indices
  556.      after all the vertices and normals.
  557.  
  558.      5. An example
  559.  
  560.      [Start of File]
  561.      View
  562.      25 25 7         - Eye point
  563.      0 0 0           - Look point
  564.      0 1 0           - Up vector
  565.      30 30           - View angles
  566.      Colors
  567.      0.196 0.6 0.8   - Background (Sky Blue)
  568.      0.1 0.1 0.1     - Ambient light
  569.      Lights
  570.      1 0 60 60 0.9 0.9 0.9  - Point Light 1
  571.      1 20 40 -7 0.9 0.9 0.9 - Point Light 2
  572.      <NL>
  573.      Surfaces
  574.      1 0.6 0.8 0.196 0.99 0.99 0.99 0 0 0 0 0 0 0 0
  575.      1 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 50 1 0 0 0
  576.      1 0.5 0.5 0.5 0.1 0.1 0.1 0.1 0.1 0.1 200 0.7 0.8 0.8 0.8
  577.      1 0.9 0.2 0.2 0.99 0.99 0.99 0 0 0 0 0 0 0 0
  578.      <NL>
  579.      Objects
  580.      5 1 1.0 0 0 0 15 15 15  - Polygon
  581.      4 1 2 3 4
  582.      <NL>
  583.      1 0 1
  584.      1 0 -1
  585.      -1 0 -1
  586.      -1 0 1
  587.      <NL>
  588.      2 2 1.0 0 2 0 7 2 3     - Parallelepiped
  589.      2 3 1.5 0 5 10 3 5 3    - Parallelepiped
  590.      1 4 1.0 7 15 -7 3       - Sphere
  591.      <NL>
  592.      Textures
  593.      2 1 2 0 0 0 0 2 0 0 0 0 2 0 0 0 0 1 0.4 4
  594.      4 2 5 0 0 0 0 5 0 0 0 0 5 0 0 0 0 1
  595.      5 4 10 0 0 0 1 10 0 0 1 1 10 0 0 0 0 1 0 0.6 0.5 2 0.1 6
  596.      <NL>
  597.      Demo / 11-OCT-1989 / Antonio Costa
  598.  
  599.  
  600.                                 January, 1994                                8
  601.  
  602.  
  603.  
  604. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  605.  
  606.  
  607.      [End of File]
  608.  
  609.      To ray trace without textures, do:
  610.  
  611.        rtrace demo.sff demo.pic >&demo.log
  612.  
  613.      else, do:
  614.  
  615.        rtrace t2 demo.sff demo.pic >&demo.log
  616.  
  617.      Another example with INESC symbol:
  618.  
  619.      [Start of File]
  620.      View
  621.      45.0 45.0 81.0  - Eye point
  622.      45.0 45.0 -81.0 - Look point
  623.       0.0  1.0  0.0  - Up vector
  624.      30 30           - View angles
  625.      Colors
  626.      0.196 0.6 0.8 - Background (Sky Blue)
  627.      0.3 0.3 0.3   - Ambient
  628.      Lights
  629.      1  0.0 100.0 100.0 1 1 1 - Light 1 (White)
  630.      1 90.0 100.0 100.0 1 1 0 - Light 2 (Yellow)
  631.      <NL>
  632.      Surfaces
  633.      1 0.557 0.420 0.137 0.8 0.7 0.7 0.2 0.3 0.3 30 0.8 0 0 0
  634.      1 0.137 0.420 0.557 0.5 0.5 0.6 0.5 0.5 0.4 5 0.2 0 0 0
  635.      1 0.600 0.800 0.200 0.9 0.9 0.9 0.0 0.0 0.0 1 0 0 0 0
  636.      <NL>
  637.      Objects
  638.      1 1 1.0 10.0 09.5 0.0 4.5 - Sphere
  639.      1 1 1.0 10.0 26.5 0.0 4.5
  640.      1 1 1.0 20.0 63.5 0.0 4.5
  641.      1 1 1.0 20.0 80.0 0.0 4.5
  642.      1 1 1.0 40.0 09.5 0.0 4.5
  643.      1 1 1.0 40.0 26.5 0.0 4.5
  644.      1 1 1.0 40.0 43.5 0.0 4.5
  645.      1 1 1.0 50.0 80.0 0.0 4.5
  646.      1 1 1.0 60.0 53.0 0.0 4.5
  647.      1 1 1.0 70.0 09.5 0.0 4.5
  648.      1 1 1.0 70.0 43.5 0.0 4.5
  649.      4 2 1.0 10.0 30.0 0.0 1.5 10.0 70.0 0.0 1.5 - Cylinder
  650.      1 2 1.0 10.0 70.0 0.0 1.5
  651.      4 2 1.0 10.0 70.0 0.0 1.5 17.5 77.5 0.0 1.5
  652.      4 2 1.0 12.5 12.0 0.0 1.5 20.0 19.5 0.0 1.5
  653.      1 2 1.0 20.0 19.5 0.0 1.5
  654.      4 2 1.0 20.0 19.5 0.0 1.5 20.0 60.0 0.0 1.5
  655.      4 2 1.0 22.5 61.0 0.0 1.5 37.5 46.0 0.0 1.5
  656.      4 2 1.0 37.5 12.0 0.0 1.5 30.0 19.5 0.0 1.5
  657.      1 2 1.0 30.0 19.5 0.0 1.5
  658.      4 2 1.0 30.0 19.5 0.0 1.5 30.0 33.5 0.0 1.5
  659.      1 2 1.0 30.0 33.5 0.0 1.5
  660.      4 2 1.0 30.0 33.5 0.0 1.5 37.5 41.0 0.0 1.5
  661.      4 2 1.0 30.0 26.5 0.0 1.5 36.5 26.5 0.0 1.5
  662.      4 2 1.0 40.0 47.0 0.0 1.5 40.0 70.0 0.0 1.5
  663.  
  664.  
  665.                                 January, 1994                                9
  666.  
  667.  
  668.  
  669. RTRACE(1G)                 Unix Programmer's Manual                 RTRACE(1G)
  670.  
  671.  
  672.      1 2 1.0 40.0 70.0 0.0 1.5
  673.      4 2 1.0 40.0 70.0 0.0 1.5 47.5 77.5 0.0 1.5
  674.      4 2 1.0 42.5 12.0 0.0 1.5 50.0 19.5 0.0 1.5
  675.      1 2 1.0 50.0 19.5 0.0 1.5
  676.      4 2 1.0 50.0 19.5 0.0 1.5 50.0 43.0 0.0 1.5
  677.      1 2 1.0 50.0 43.0 0.0 1.5
  678.      4 2 1.0 50.0 43.0 0.0 1.5 57.5 50.5 0.0 1.5
  679.      4 2 1.0 67.5 12.0 0.0 1.5 60.0 19.5 0.0 1.5
  680.      1 2 1.0 60.0 19.5 0.0 1.5
  681.      4 2 1.0 60.0 19.5 0.0 1.5 60.0 33.5 0.0 1.5
  682.      1 2 1.0 60.0 33.5 0.0 1.5
  683.      4 2 1.0 60.0 33.5 0.0 1.5 67.5 41.0 0.0 1.5
  684.      5 3 1.0 0.0 4.0 0.0 200.0 200.0 200.0 - Polygon
  685.      4 1 2 3 4
  686.      <NL>
  687.       1.0 0.0  1.0
  688.       1.0 0.0 -1.0
  689.      -1.0 0.0 -1.0
  690.      -1.0 0.0  1.0
  691.      <NL>
  692.      <NL>
  693.      End
  694.      INESC Logo / 23-FEB-1989 / Antonio Costa
  695.  
  696. HISTORY
  697.      Copyright (C) 1988, 1994 Antonio Costa.
  698.      Permission is granted to use this file  in  whole  or  in  part  for  any
  699.      purpose,  educational,  recreational  or  commercial,  provided that this
  700.      copyright notice is retained unchanged. This software is available to all
  701.      free of charge by anonymous FTP.
  702.  
  703.      27-Jan-94  Antonio Costa
  704.           Release 8.4.0
  705.           acc@asterix.inescn.pt
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.                                January, 1994                                10
  731.  
  732.